Multiple input, multiple output system and method

ABSTRACT

A linear transformation of parallel multiple input, multiple output (MIMO) encoded streams; also, space-time diversity and asymmetrical symbol mapping of parallel streams. Separately or together, these improve error rate performance as well as system throughput. Preferred embodiments include CDMA wireless systems with multiple antennas.

CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This application is a continuation-in-part from parent applications Ser. No. ______, filed Apr. 30, 2002.

BACKGROUND OF THE INVENTION

[0002] The present invention relates to wireless digital communications, and more particularly to space-time diversity transmission systems and methods.

[0003] Spread spectrum wireless communications utilize a radio frequency bandwidth greater than the minimum bandwidth required for the transmitted data rate, but many users may simultaneously occupy the bandwidth. Each of the users has a pseudo-random code for “spreading” information to encode it and for “despreading” (by correlation) received spread spectrum signals and recovery of information. Such multiple access typically appears under the name of code division multiple access (CDMA). The pseudo-random code may be an orthogonal (Walsh) code, a pseudo-noise (PN) code, a Gold code, or combinations (modulo-2 additions) of such codes. After despreading the received signal at the correct time instant, the user recovers the corresponding information while other users' interfering signals appear noise-like. For example, the interim standard IS-95 for such CDMA communications employs channels of 1.25 MHz bandwidth and a pseudo-random code pulse (chip) interval T_(c) of 0.8138 microsecond with a transmitted symbol (bit) lasting 64 chips. The recent 3GPP wideband CDMA (WCDMA) proposal employs a 3.84 MHz bandwidth and the CDMA code length applied to each information symbol may vary from 4 chips to 256 chips. Indeed, UMTS (universal mobile telecommunications system) approach UTRA (UMTS terrestrial radio access) provides a spread spectrum cellular air interface with both FDD (frequency division duplex) and TDD (time division duplex) modes of operation. UTRA currently employs 10 ms duration frames partitioned into 15 time slots with each time slot consisting of 2560 chips (T_(c)=0.26 microsecond).

[0004] The air interface leads to multipath reception, so a RAKE receiver has individual demodulators (fingers) tracking separate paths and combines the finger results to improve signal-to-noise ratio (SNR). The combining may use a method such as the maximal ratio combining (MRC) in which the individual detected signals in the fingers are synchronized and weighted according to their signal strengths or SNRs and summed to provide the decoding. That is, a RAKE receiver typically has a number of DLL or TDL code tracking loops together with control circuitry for assigning tracking units to the strongest received paths. Also, an antenna array could be used for directionality by phasing the combined signals from the antennas.

[0005] Further, UTRA allows for space-time block-coding-based transmit antenna diversity (STTD) in which, generically, channel bits b₀, b₁, b₂, b₃ (values ±1) are transmitted as the sequence b₀, b₁, b₂, b₃ by antenna 1 and simultaneously transmitted as the sequence −b₂, b₃, b₀, −b₁ by antenna 2. Note that interpreting (b₀, b₁) and (b₂, b₃) as two complex numbers (e.g., QPSK or QAM symbols) implies the sequence transmitted by antenna 2 differs from the sequence from antenna 1 by a rotation of π/2 in a two-complex-dimensional space followed by complex conjugation.

[0006] STTD is a diversity technique in the sense that it provides redundancy for the transmitted symbols. Recently, efforts in standardization of high speed downlink packet access (HSDPA) in WCDMA have taken place. The use of multiple antennas at the transmitter as well as the receiver is considered as a candidate technology. While STTD fits nicely in the grand scheme, STTD does not provide any increase in data rate relative to the current WCDMA systems.

[0007] Naguib et al, Increasing Data Rate over Wireless Channels, IEEE Signal Proc. Mag. 76 (May 2000) considers multiple antennas for both transmitter and receiver together with synchronous cochannel space-time coding (STTD) and interference cancellation. This approach can be adopted for HSDPA systems with 4 antennas at the base station, where each of the two pairs of antennas transmits one distinct data stream. This results in the transmission of two independent data streams, and thus doubles the system data rate as well as capacity. This scheme is thus double STTD (DSTTD) for a 4-antenna transmitter, or multiple STTD for a 2n-antenna transmitter with n>2.

[0008] For high data rate systems, the performance of a scheme can be evaluated based on the error rate (bit error rate, symbol error rate, frame error rate) as well as system throughput (the total data rate the system can support). While double/multiple STTD provides increased data rate and reasonably good performance, it can still be improved in some circumstances.

[0009] For practical wireless communication systems employing multiple antennas, small inter-element spacing is desirable. However, this often results in large correlation between the channel parameters especially when the channel angular spread is small. For high data rate schemes such as double/multiple STTD, high channel correlation results in significant performance loss due to the loss in diversity gain as well as decrease in the ability to separate multiple independent data streams.

SUMMARY OF THE INVENTION

[0010] The present invention provides encoding/decoding with a channel adapting linear transform of parallel multiple input, multiple output streams.

[0011] This has the advantages including increased performance (in terms of error rate and system throughput) for wireless communications.

BRIEF DESCRIPTION OF THE DRAWINGS

[0012] The drawings are heuristic for clarity.

[0013]FIGS. 1a-1 d are flow diagrams.

[0014]FIGS. 2a-2 g illustrate preferred embodiment transmitter and receivers.

[0015] FIGS. 3-4 show other preferred embodiment transmitter and receiver.

[0016] FIGS. 5-9 present simulation results.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0017] 1. Overview

[0018]FIGS. 1a-1 d are flow diagrams for preferred embodiment transmission and reception methods which include transmission using linear transformations of parallel symbol streams with space-time transmit diversity (STTD) encoding for multiple transmission antennas. Reception responds to the linear transformation. Alternative preferred embodiment double/multiple STTD encoding uses differing constellations for differing symbols streams with or without the linear transformation. The linear transformation adapts to the transmission channel conditions in order to make the transformed channel matrix formally approximate that of an independent identically distributed channel; this enhances channel capacity and system performance by compensating for high correlation of transmission channel coefficients as may arise from small spacing of transmitter antennas. The linear transformation is updated to adapt to changing channel conditions. Preferred embodiment approaches for simplifying the linear transformation computation include restriction of the linear transformation to a permutation or quantization of its elements.

[0019] Preferred embodiment communications systems use preferred embodiment encoding and decoding methods, and FIGS. 2a-2 c illustrate preferred embodiment transmitter and receiver functional blocks.

[0020] In preferred embodiment communications systems base stations and mobile users could each include one or more digital signal processors (DSPs) and/or other programmable devices with stored programs for performance of the signal processing of the preferred embodiment methods. Alternatively, specialized circuitry could be used. The base stations and mobile users may also contain analog integrated circuits for amplification of inputs to or outputs from antennas and conversion between analog and digital; and these analog and processor circuits may be integrated as a system on a chip (SoC). The stored programs may, for example, be in ROM or flash EEPROM integrated with the processor or external. The antennas may be parts of receivers with multiple finger RAKE detectors for each user's signals. Exemplary DSP cores could be in the TMS320C6xxx or TMS320C5xxx families from Texas Instruments.

[0021] 2. Four Transmit Antennas with one Receive Antenna Preferred Embodiments

[0022]FIG. 2a illustrates a first preferred embodiment transmitter which encodes two symbol streams (s₁ and S₂) with an STTD encoder for each stream and transmits with four antennas, two antennas for each STTD encoder. This could be a base station transmitter in a cellular wireless system. FIG. 2b illustrates a preferred embodiment receiver with one antenna for reception, such as for a mobile user in a cellular wireless system. Preferred embodiments in subsequent sections include general antenna arrangements. A base station may include the channel estimation and linear transformation computation as in FIG. 2b.

[0023] The FIG. 2a transmitter may operate according to the FIG. 1a flow as follows. Presume a block of data bits (with FEC) is channel encoded, block interleaved, and mapped to a block of symbols: . . . , s₁(n), s₂(n), s₁(n+1), s₂(n+1), s₁(n+2), s₂(n+2), s₁(n+3), s₂(n+3), . . . , where each symbol s_(j)(k) is interpreted as a discrete complex number (e.g., QPSK, QAM, . . . ). The serial-to-parallel converter sends the stream . . . , s₁(n), s₁(n+1), s₁(n+2), s₁(n+3), . . . to the upper STTD encoder and the stream . . . , s₂(n), s₂(n+1), s₂(n+2), s₂(n+3), . . . to the lower STTD encoder. The upper STTD encoder has two outputs streams: . . . , x₁(n), x₁(n+1), x₁(n+2), x₁(n+3), . . . , and . . . , x₂(n), x₂(n+1), x₂(n+2), x₂(n+3), . . . , where pairwise the x_(j)()s are equal to the s₁()s: x₁(n)=s₁(n), x₁(n+1)=s₁(n+1) and x₂(n)=−s₁*(n+1), x₂(n+1)=s₁*(n). That is, the x₁ stream is just the s₁ stream and the x₂ stream is the pairwise rotation in two-complex-dimensional space of the s₁ stream. Analogously, the lower STTD encoder has two outputs streams: . . . x₃(n), x₃(n+1), x₃(n+2), x₃(n+3), . . . , and . . . , x₄(n), x₄(n+1), x₄(n+2), x₄(n+3), . . . where again pairwise the x_(j)()s are equal to the s₂()s: x₃(n)=s₂(n), x₃(n+1)=s₂(n+1) and x₄(n)=−s₂*(n+1), x₄(n+1)=s₂*(n).

[0024] The W block linearly transforms the four streams x₁(n), x₂(n), x₃(n), x₄(n) into the four streams y₁(n), y₂(n), y₃(n), y₄(n); that is, W transforms four symbol streams into four streams of linear combinations of symbols. W adapts to transmission channel conditions as described below; and the choice of W enhances channel capacity. Note that the flow of FIG. 1a presumes that the transmitter also receives signals in the same channel as its transmissions so that the transmitter can estimate the physical channel coefficients and compute W; otherwise, the transmitter must obtain W from the receiver to which it transmits. For the case of a CDMA system each of the four outputs y_(j)(n) is next spread (multiplied by a common spreading code). Then the (spread) transformed-symbol streams drive modulators (pulse generators (at the chip rate) with essentially cosine and sine pulses for the real (in phase) and imaginary (quadrature) components of the (spread) y_(j)(n)) which modulate the carrier wave radiated by the corresponding transmitter antennas. For preferred embodiments not using CDMA, omit the spreading and operate the pulse generators at the symbol rate. For an OFDM (orthogonal frequency division multiplexing) system each sub-carrier (tone) would have its own double/multiple STTD and linear transformation.

[0025]FIG. 2b illustrates a first preferred embodiment receiver with one antenna which operates as indicated by FIG. 1b. The antenna connects to a down-converter which drives a RAKE detector having one or more tracking fingers (including a sub-chip-rate sampler for A/D conversion, early-late chip synchronizer with despreading correlator, path channel estimation) to track resolvable received multipath signals, and the multipath detected signals may be combined using SNR weights. All four transmitter spreaders use the same spreading code; this increases capacity in that other spreading codes may be used for other data streams. Small spacing among the four transmitter antennas implies high correlation among the transmission channel coefficients in that each path from one transmitter antenna likely has corresponding highly correlated paths from the other three transmitter antennas. This also implies near synchrony of the received symbols from the four transmitter antennas along four highly correlated paths and a single despreader captures all four paths in a receiver RAKE finger. Of course, the channel coefficients for the four highly-correlated paths must differ somewhat in order to distinguish the s₁ and S₂ symbols; and the linear transformation W effectively utilizes these differences. Preferred embodiment receivers with two or more antennas (see below) provide further channel coefficient variety.

[0026] Denote the received (despread) baseband signal for symbol interval n as

r(n)=h ₁ y ₁(n)+h ₂ y ₂(n)+h ₃ y ₃(n)+h ₄ y ₄(n)+w(n)

[0027] where h_(m) is the baseband channel coefficient for the channel path(s) from the mth transmitter antenna to the receiver antenna and w(n) is channel white noise. Note that the h_(m) vary with n, but this variation is slow and thus ignored (except for channel estimation updates) and not explicit in the notation. Estimate the h_(m) by intermittently transmitting pilot symbols from each of the four transmitter antennas; FIG. 2b indicates channel estimation.

[0028] First analyze the receiver in the simplest case of the y_(m)(n)=x_(m)(n), which corresponds to the transformation matrix W=I4 (the 4×4 identity matrix). That is, consider: $\begin{matrix} {{r(n)} = {{h_{1}{x_{1}(n)}} + {h_{2}{x_{2}(n)}} + {h_{3}{x_{3}(n)}} + {h_{4}{x_{4}(n)}} + {w(n)}}} \\ {= {{h_{1}{s_{1}(n)}} + {h_{2}\left( {{- s_{1}}*\left( {n + 1} \right)} \right)} + {h_{3}{s_{2}(n)}} + {h_{4}\left( {{- s_{2}}*\left( {n + 1} \right)} \right)} + {w(n)}}} \end{matrix}$

[0029] and so $\begin{matrix} {{r^{*}\left( {n + 1} \right)} = {{h_{1}^{*}{x_{1}^{*}\left( {n + 1} \right)}} + {h_{2}^{*}{x_{2}(n)}} + {h_{3}^{*}{x_{3}^{*}\left( {n + 1} \right)}} + {h_{4}^{*}{x_{4}\left( {n + 1} \right)}} + {w^{*}\left( {n + 1} \right)}}} \\ {= {{h_{1}^{*}{s_{1}^{*}\left( {n + 1} \right)}} + {h_{2}^{*}{s_{1}(n)}} + {h_{3}^{*}{s_{2}^{*}\left( {n + 1} \right)}} + {h_{4}^{*}{s_{2}(n)}} + {w^{*}\left( {n + 1} \right)}}} \end{matrix}$

[0030] This can be expressed in terms of 2-vectors and 2×2 matrices as:

r=A ₁ s ₁ +A ₂ s ₂ +w

[0031] where r is the 2-vector of components r(n), r*(n+1); s₁ is the 2-vector of components s₁(n), s₁*(n+1); s₂ is the 2-vector of components s₂(n), S₂*(n+1); A₁ is a 2×2 matrix corresponding to the channel path(s) of the upper pair of transmitter antennas in FIG. 2a to the receiver antenna with the first row of A₁ equal h₁, −h₂ and second row h₂*, h₁*; A₂ is a 2×2 matrix corresponding to the channel path(s) of the lower pair of transmitter antennas to the receiver antenna with the first row h₃, −h₄ and second row h₄*, h₃*; and w is a 2-vector with white noise components.

[0032] The notation can be further compressed with the following definitions: 4×1 vector s as the vertical concatenation of s₁ and S₂; and 2×4 matrix A as the horizontal concatenation of A₁ and A₂ (thus the first row of A is [h₁, −h₂, h₃, −h₄] and the second row is [h₂*, h₁*, h₄*, h₃*]. With these definitions:

r=A s+w

[0033] The matrix A is the 2×4 effective channel coefficient matrix of the channel from the four transmitter antennas to the receiver antenna.

[0034] The two signals transmitted by the two transmitter antennas fed from the same STTD encoder (e.g., x₁ and x₂ or x₃ and X₄) will not interfere with each other due to the orthogonality provided by the STTD encoding. Indeed, at receiver antenna 1 the portion of the 2-vector [r(n), r(n+1)] from transmitter antenna 1 is [h₁s₁(n), h₁s₁(n+1)] and the portion from transmit antenna 2 is [−h₂s₁*(n+1), h₂s₁*(n)], and the complex inner product of these two vectors is h₁s₁(n){−h₂s₁*(n+1)}*+h₁s₁(n+1){h₂s₁*(n)}*=0. However, any combination of two signals coming from different STTD encoders interfere with each other and need to be separated using an interference resistant detector. Some examples of interference resistant detection scheme are the maximum likelihood (which is optimal) detection, linear detection (zero forcing or minimum mean square error (MMSE)), and iterative detection (zero forcing or MMSE). Both linear and iterative detectors are based on the idea of interference suppression and/or cancellation.

[0035] Since the matrix A is 2×4, linear and iterative detectors are not applicable in this scenario. The maximum likelihood detector, however, can still be utilized. In general, a maximum likelihood detection estimates the transmitted symbols s by ŝ which is the 4-vector of symbols that minimizes the sum of the error in the received signal on the receiver antenna:

min ∥r−Aŝ ∥ ²=min ∥r−(A ₁ ŝ ₁ +A ₂ ŝ ₂)∥²

[0036] Because there are a finite number of symbols in a constellation (e.g., QAM, QPSK, . . . ), there are only a finite number of symbol pairs to search for the minimization. And the minimization computations can use the channel estimates Â (derived from received known pilot symbol transmissions) in place of A. Further, the detector output may be a soft (log of symbol probability) output for each possible symbol; a MAP decoder would use such detector outputs.

[0037] The computations (search over the finite set of possible ŝ) can be recast by left multiplication with A^(H) where ^(H) indicates Hermitian conjugate. This recasting provides a direct analysis below for the linear transformation W. Thus set:

z=A ^(H) r=A ^(H)(A s+w)=C s+A ^(H) w

[0038] Then the decoding minimization formally becomes

min (z−Cŝ)^(H) C⁻¹ (z−Cŝ)

[0039] where C is the 4×4 Hermitian matrix A^(H) A which can be viewed as a 2×2 array of 2×2 matrices A_(k) ^(H)A_(m for k,m=)1,2 with $\begin{matrix} {{A_{1}^{H}A_{1}} = {\left( \left| h_{1} \middle| {}_{2}{+ \left| h_{2} \right|^{2}} \right. \right)I_{2}}} & {\left( {I_{2}\quad {is}\quad 2 \times 2\quad {identity}\quad {matrix}} \right)} \\ {{A_{2}^{H}A_{2}} = {\left( \left| h_{3} \middle| {}_{2}{+ \left| h_{4} \right|^{2}} \right. \right)I_{2}}} & \quad \\ {{A_{1}^{H}A_{2}} = \begin{bmatrix} \left( {{h_{1}^{*}h_{3}} + {h_{2}h_{4}^{*}}} \right) & {- \left( {{h_{1}^{*}h_{4}} - {h_{2}h_{3}^{*}}} \right)} \\ \left( {{h_{1}^{*}h_{4}} + {h_{2}h_{4}^{*}}} \right)^{*} & \left( {{h_{1}^{*}h_{3}} - {h_{2}h_{4}^{*}}} \right) \end{bmatrix}} & \quad \\ {{A_{2}^{H}A_{2}} = \left( {A_{1}^{H}A_{2}} \right)^{H}} & \quad \end{matrix}$

[0040] That is, C consists of STTD-encoded 2×2 subblocks and reflects the physical channel which determines performance of the communication system.

[0041] Now for W in general; choose W so that the corresponding transformed C, denoted {haeck over (C)}, will resemble the channel matrix of an independent, identically distributed channel in that: (1) expectations of off-diagonal elements are close to 0 and (2) expectations of on-diagonal elements are uniform. The off-diagonal elements reflect the average additional interference due to channel correlations, and the smallest on-diagonal element corresponds to the stream with the worst signal to interference plus noise ratio (SINR) which dominates performance. Thus transform with W to approximate optimal channel performance; so channel correlation underlies the choice of W as follows.

[0042] Presume a Rayleigh fading channel so the h_(m) are normally distributed complex random variables with zero means. And the 4×4 channel covariance matrix, R, is the expectation of the 4×4 matrix of pairwise products of channel coefficients; that is, for k,m=1,2,3,4:

R_(k,m)=E[h_(k)h_(m)*]

[0043] For fading channels with rich scatterers (typical conditions for cellular wireless), the scattering at the transmitter and at the receiver are independent; and this independence, in general, implies R decomposes as the tensor product of the transmitter spatial covariance matrix R_(TX) (elements _(92 TX)(k,m)) and the receiver spatial covariance matrix R_(RX) (elements _(ρRX)(i,j)). That is, R=R_(RX)

R_(TX); or in other words, E[h_(ik)h_(jm)*]=_(ρRX)(i,j) _(ρTX)(k,m). For the preferred embodiments with 4 transmitter antennas and one receiver antenna:

E[h_(k)h_(m)*]=_(ρRX)(1,1) _(ρTX)(k,m) for k,m=1,2,3,4

[0044] Thus _(ρRX)(1,1) is just a multiplicative constant, and the relative values of the _(ρTX)(k,m) determines the detection.

[0045] Estimate (e.g., maximum likelihood) the 4×4 transmitter covariance matrix, R_(TX), by a sample covariance matrix which can be obtained from averaging the channel coefficient estimates ĥ_(m) over multiple symbol intervals. Because R_(TX) is Hermitian, there are only 4 diagonal plus 6 upper (or lower) triangular independent elements to estimate.

_(ρRX)(1,1) _(ρTX)(k,m)=(1/N) Σ_(1≦n≦N) ĥ_(k)[n]ĥ_(m)*[n]

[0046] where N is the number of samples and the ĥ_(m)[n] are the channel coefficient estimates for symbol interval n. The number of samples N used may depend upon the fading rate of the channel; but a heuristic rule of thumb takes N>5L where L is the length of vector h_(m). The estimates ĥ_(m) (from a pilot channel) are available from the space-time combining operation.

[0047] Now consider the effect of a linear transformation W. As illustrated in FIG. 2a the y_(m)(n) are expressed in terms of the x_(m)(n) by the linear transform W. Thus write x₁(n), x₂(n), x₃(n), x₄(n) as a 4-vector x(n) and similarly write y₁(n), y₂(n), y₃(n), y₄(n) as the 4-vector y(n), and take y(n)=W* x(n) where W is a 4×4 complex matrix and W* is the complex conjugate of W. Thus the received signal r(n) can be expressed in terms of the x_(m) for general W by $\begin{matrix} {{r(n)} = {{h_{1}{y_{1}(n)}} + {h_{2}{y_{2}(n)}} + {h_{3}{y_{3}(n)}} + {h_{4}{y_{4}(n)}} + {w(n)}}} \\ {= {{\hslash_{1}{x_{1}(n)}} + {\hslash_{2}{x_{2}(n)}} + {\hslash_{3}{x_{3}(n)}} + {\hslash_{4}{x_{4}(n)}} + {w(n)}}} \end{matrix}$

[0048] Take h to be the 4-vector with components h₁, h₂, h₃, h₄ and

the 4-vector components

₁,

₂,

₃,

₄, and thus

=W^(H) h. In other words, the transformed physical channel in terms of x has channel coefficients

: $\begin{matrix} {r = \left. {< h} \middle| {y > {+ w}} \right.} \\ {= \left. {< h} \middle| {{W^{*}x} > {+ w}} \right.} \\ {= \left. {< {W^{H}h}} \middle| {x > {+ w}} \right.} \\ {= \left. {< \hslash} \middle| {x > {+ w}} \right.} \end{matrix}$

[0049] Likewise in terms of x, the 2×2 STTD channel matrices are {haeck over (A)}₁ with first row [

₁, −

₂] and second row [

₂*,

₁*], and {haeck over (A)}₂ with first row [

₃, −

₄] and second row [

₄*,

₃*]; the channel matrix {haeck over (C)}={haeck over (A)}^(H){haeck over (A)}; the transmitter covariance {haeck over (R)}_(TX)=W^(H)R_(TX) W, and the covariance {haeck over (R)}=(I

W)^(H) R (I

W) where I is the 1×1 identity matrix from the receiver with one antenna. (if the receiver has one antenna with a Q-finger RAKE detector, then this is essentially the same as Q separate antennas and the receiver covariance matrix R_(RX) is QQ and will reflect the RAKE combining; the following section considers multiple receiver antennas.)

[0050] The preferred embodiments choose W so the transformed channel matrix {haeck over (C)} approximates that of an independent, identically distributed channel. This translates into finding the W that minimizes the expectation of the off-diagonal terms of {haeck over (C)} and that uniformizes the expectations of the on-diagonal terms. First, presume a normalization: trace{W^(H)W}=4. Next, because only relative size among the

_(m) matters, normalize by taking trace{{haeck over (R)}_(TX)}=4; this implies E[|

₁|²+|

₂ ²+|

₃|²+|

₄|²]=4. Then find W to minimize the sum of off-diagonal terms ΣΣ_(k≠m) trace{E[{haeck over (A)}_(k) ^(H){haeck over (A)}_(m)]} and uniformize on-diagonal terms so E[|

₁|²+|

₂|²]=E[|

₃|²+|

₄|²]=2. FIG. 1b illustrates the foregoing flow, including intermittently updating the channel coefficient estimation and resultant W computation. And FIG. 2b shows a receiver block diagram.

[0051] More explicitly, a minimization of the off-diagonal elements together with uniformization of the on-diagonal elements of E[{haeck over (C)}] is taking W to

min{|E[

₁*

₃+

₂

₄*]|²+|E[

₁*

₄−

₂

₃*]|²}

min{|E[|

₁|²+|

₂|²]−2|}

[0052] Thus the overall detection approach in FIG. 2b starts with estimates of the physical channel coefficients, h_(m), as from pilot symbols, and these estimates (after linear transformation with the then-current W) are used to make {haeck over (A)} for detection. Of course, the W used for detection at the receiver must match the W used by the transmitter. And, for a W update, the recent channel estimates are used to generate estimates of the correlation expectations E[h_(k)h_(m)*] which are transformed by a W into the transformed channel correlation expectations E[

_(k)

_(m)*] and also, by combinations, into elements of an updated E[{haeck over (C)}]. Hence, update W by picking the transformation which makes E[C] approximate the maximum capacity channel with 0 off-diagonal elements and uniform on-diagonal elements. Intermittently (periodically) perform this update computation of W to adapt to changing channel conditions. The channel coefficients estimation could be a moving averages over a few slots (e.g., 3 slots, 6 slots, 15 slots with a 0.667 msec slot in WCDMA); or the estimation could be at the symbol rate by running the pilot through a simple smoothing filter, especially for high fading rates conditions. The The W update may be once a transmission time interval which may be 1 slot, 3 slots, 5 slots, 15 slots. More adaptively, the updates could be according to an analysis of current channel estimates.

[0053] After finding W, which may be performed by both the transmitter and the receiver or just by the receiver and conveyed to the transmitter, the transmitter applies W to transmissions as illustrated in FIGS. 1a, 2 a. Similarly, the receiver applies W to its estimates of physical channel coefficients

_(m) from pilot transmissions to recover the transformed physical channel coefficients

_(m) and then the STTD matrices {haeck over (A)}_(m) by expectations. The Am are used for space-time decoding as shown in FIGS. 1b, 2 b by finding ŝ to minimize

min ({haeck over (A)}^(H)r−{haeck over (C)}ŝ)^(H){haeck over (C)}⁻¹ ({haeck over (A)}^(H)r−{haeck over (C)}ŝ)

[0054] where.{haeck over (C)} is roughly the identity matrix. In this case, one may approximate the maximum likelihood matrix as

min ∥{haeck over (A)}^(H)r−{haeck over (C)}ŝ∥²

[0055] The minimization computations optimally consider all possible W and lead to complex computations. In the case of time-division duplexing (TDD) with base station transmission and reception (from mobiles) in the same (reciprocal) physical channel, the W computation may be performed at the base station using its channel estimates as in FIG. 1a; the base station typically has available computational power. The W used at the transmitter can be communicated to the receiver for detection. Alternatively, the receiver itself may also compute W based on its most recent or delayed channel estimates.

[0056] In contrast, for frequency-division duplexing (FDD) the W must be computed at the mobile receiver (the base station receives signals from the mobile in a different frequency band) and communicated to the base station via a feedback channel; consequently, quantization of W permits computations to be performed by searching (comparison-feedback) over smaller sets of possible Ws. A one-shot approach compares all possible choices of W and then progressively signals the quantized elements of W back to the transmitter, most significant bits first. Alternatively, partition the set of all possible W into subsets: S₁, S₂, . . . S_(K). Then at an update time t the receiver compares the choices of W in a corresponding subset S_(k(t)), and the resulting best (minimizing) choice W_((k)) from this subset is then compared to the then-current previous best choices W⁽¹⁾ , . . . , W^((K)) from the other subsets, and the best W^((t)) of these W⁽¹⁾, . . . , W^((k)), . . . , W^((K)) is used as the update and sent to the transmitter.

[0057] Another low complexity approach restricts W to be a permutation of the x_(m); that is, y₁(n)=x_(π(1))(n), y₂(n)=x_(π(2))(n), y₃(n)=x_(π(3))(n), y₄(n)=x_(π(4))(n) where π is a permutation of {1,2,3,4}. Thus W will be a matrix with 4 elements equal to 1 and the remaining 12 elements equal to 0; and

_(π(m))=h_(m). For an FDD system, the restriction to a search of only permutation Ws reduces the computation complexity for a mobile receiver which may have limited computational power. This is also particularly beneficial when the feedback resource is limited and/or the channel changes at a faster rate. By symmetry not all permutations must be considered; for example, interchanging s₁ and s₂ has no effect on the channel. Indeed, there are only 6 different permutations. Note that with W a permutation, the minimization constraint trace{W^(H)W}=4 automatically occurs, and the constraint E[|

₁|²+|

₂|²]=E[|

₃|²+|

₄|²]=2 translates to choosing from three possibilities (permutations): (1) E[|h₁|²+|h₂|²]≅E[|h₃|²+|h₄|²]≅2; (2) E[|h₁|²+|h₃|²]≅E[|h₂|²+|h₄|²]≅2; or (3) E[|h₁|²+|h₄|²]≅E[|h₂|²+|h₃|²]≅2.

[0058] When the power across all the channel coefficients is uniformly distributed (that is, E[|h_(p)|²]=1 for all p), the above constraints are automatically satisfied. In this case, it suffices to consider only the minimization of the off-diagonal terms of E[{haeck over (C)}]. Otherwise, a tradeoff between the off-diagonal minimization and on-diagonal uniformization can be used. For example, the permutation matrix W may be chosen as the minimization:

min {v₁|E[h_(π(1))*h_(π(3))+h_(π(2))h_(π(4))*]|²+v₂|E[h_(π(1))*h_(π(4))−h_(π(2)h) _(π(3))*]|²

+v₃|E[|h_(π(1))|²+|h_(π(2))|²]−2|²}

[0059] where v₁, v₂, and v₃ are weighting parameters that are chosen to achieve the desired degree of trade-off.

[0060] Further, the approach of restricting W to be a permutation can be expanded to include weighting of the nonzero elements of W. In particular, with permutation π, take y₁(n)=w_(π(1))x_(π(1))(n), y₂(n)=w_(π(2))x_(π(2))(n), y₃(n)=W_(π(3))x_(π(3))(n), y₄(n)=w_(π(4))x_(π(4))(n) where the set of weights {w₁, w₂, W₃, W₄} are nonzero and may be quantized to further limit complexity. In this case the constraint trace{W^(H)W}=4 translates into |w₁|²+|w₂|²+|w₃|²+|w₄|²=4.

[0061] 3. Four Transmit Antennas with Multiple Receive Antennas Preferred Embodiments

[0062]FIG. 2c illustrates a first preferred embodiment receiver with Q (≧2) antennas and which, analogous to the one antenna receiver of FIG. 2b, receives transmissions from the transmitter of FIG. 2a; FIG. 1c is a flow diagram. As FIG. 2e illustrates a single antenna together with Q RAKE fingers for tracking Q resolvable received paths can effectively operate the same as Q antennas because Q resolvable paths will have differing transmission channel coefficients. Similarly, other combinations of antennas and fingers can be interpreted as multiple antennas with single fingers or a single antenna with multiple fingers.

[0063] Denote the received despread baseband signal for symbol interval n for receiver antenna q (1<q<Q) as

r _(q)(n)=h _(q1) y ₁(n)+h _(q2) y₂(n)+h _(q3) y ₃(n)+h _(q4) y ₄(n)+w _(q)(n)

[0064] where h_(qm) is the baseband channel coefficient for the channel from the m^(th) transmitter antenna to receiver antenna q and w_(q)(n) is channel white noise. Pilot symbols from each of the four transmitter antennas provide updating estimates for the h_(qm) as shown in FIG. 2d.

[0065]FIG. 1c is a flow diagram for the operation of the Q-antenna receiver which is analogous to and an extension of the operation of the previously-described one antenna receiver of FIG. 1b. In particular, using notation analogous to that of the foregoing, take W* as the 4×4 matrix that transforms x to y as before; then take h_(q) to be the 4-vector with coefficients h_(q1), h_(q2), h_(q3), h_(q4), and set

_(q)=W^(H)h_(q), thus with a real inner product: $\begin{matrix} {r_{q} = \left. {< h_{q}} \middle| {y > {+ w_{q}}} \right.} \\ {= \left. {< h_{q}} \middle| {{W^{*}x} > {+ w_{q}}} \right.} \\ {= \left. {< {W^{H}h_{q}}} \middle| {x > {+ w_{q}}} \right.} \\ {= \left. {< \hslash_{q}} \middle| {x > {+ w_{q}}} \right.} \end{matrix}$

[0066] or more explicitly, $\begin{matrix} {{r_{q}(n)} = {{\hslash_{q1}{x_{1}(n)}} + {\hslash_{q2}{x_{2}(n)}} + {\hslash_{q3}{x_{3}(n)}} + {\hslash_{q4}{x_{4}(n)}} + {w_{q}(n)}}} \\ {= {{\hslash_{q1}{s_{1}(n)}} + {\hslash_{q2}\left( {- {s_{1}^{*}\left( {n + 1} \right)}} \right)} + {\hslash_{q3}{s_{2}(n)}} + {\hslash_{q4}\left( {- {s_{2}^{*}\left( {n + 1} \right)}} \right)} + {w_{q}(n)}}} \end{matrix}$

[0067] and $\begin{matrix} {{r_{q}^{*}\left( {n + 1} \right)} = {{\hslash_{q1}^{*}{x_{1}^{*}\left( {n + 1} \right)}} + {\hslash_{q2}^{*}{x_{2}^{*}\left( {n + 1} \right)}} + {\hslash_{q3}^{*}{x_{3}^{*}\left( {n + 1} \right)}} + {\hslash_{q4}^{*}{x_{4}^{*}\left( {n + 1} \right)}} + {w_{q}^{*}\left( {n + 1} \right)}}} \\ {= {{\hslash_{q1}^{*}{s_{1}^{*}\left( {n + 1} \right)}} + {\hslash_{q2}^{*}{s_{1}(n)}} + {\hslash_{q3}^{*}{s_{2}\left( {n + 1} \right)}} + {\hslash_{q4}^{*}{s_{2}(n)}} + {w_{q}^{*}\left( {n + 1} \right)}}} \end{matrix}$

[0068] This can again be expressed in terms of 2-vectors and 2×2 matrices as:

r _(q)={haeck over (A)}_(q1) s ₁ +{haeck over (A)} _(q2) s ₂ +w _(q)

[0069] where r_(q) is the 2-vector of components r_(q)(n), r_(q)*(n+1); s₁ is the 2-vector of components s₁(n), s₁*(n+1); s₂ is the 2-vector of components s₂(n), s₂*(n+1); {haeck over (A)}_(q1) is a 2×2 matrix corresponding to the channels of the upper pair x₁, x₂ in FIG. 1a to receiver antenna q with first row of {haeck over (A)}_(q1) equal

_(q1), −

_(q2) and second row

_(q2)*,

_(q1)*; {haeck over (A)}_(q2) is a 2×2 matrix corresponding to the channels of the lower pair x₃, x₄ to receiver antenna q with first row

_(q3), −

_(q4) and second row

_(q4)*,

_(q3)*; and W_(q) is a 2-vector with white noise components.

[0070] As with the prior preferred embodiment, the notation can be further compressed with the following definitions: the 2Q×1 vector r with its first two components equal the two components of r₁, next two components equal the two components of r₂, and so forth to the Qth last two components equal to the two components of r_(Q) (i.e., vertical concatenation of r₁, r₂, . . . , r_(Q)), 4×1 vector s as the vertical concatenation of s₁ and s₂; and 2Q×4 matrix {haeck over (A)} as the Q×2 array of 2×2 matrices {haeck over (A)}₁₁ {haeck over (A)}₁₂; {haeck over (A)}₂₁ {haeck over (A)}₂₂; . . . {haeck over (A)}_(Q1) {haeck over (A)}_(Q2) (thus the first row of {haeck over (A)} is [

₁₁, −h₁₂, h₁₃, −h₁₄] and second row [h₁₂*, h₁₁*, h₁₄*, h₁₃*], third row [h₂₁, −h₂₂, h₂₃, −h₂₄], fourth row [h₂₂*, h₂₁*, h₂₄*, h₂₃*], and so forth down to the 2Qth row [h_(Q2)*, h_(Q1)*, h_(Q4)*, h_(Q3)*]. With this notation:

r={haeck over (A)} s+w

[0071] The matrix {haeck over (A)} is the 2Q×4 effective transformed channel coefficient matrix of the 4Q paths: one from each of the four x_(m) to each of the Q receiver antennas. The 4×4 transformation matrix W will be determined as previously by approximating an independent, identically distributed channel.

[0072] As with the previous preferred embodiments, form {haeck over (C)} as the 4×4 Hermitian TI-32969AA Page 17 matrix {haeck over (A)}^(H){haeck over (A)} which can be viewed as a 2×2 array of sums of 2×2 matrices {haeck over (A)}_(q,k) ^(H{haeck over (A)}) _(q,m) with the sums over q in the range 1≦q≦Q for each k,m=1,2, where

{haeck over (A)}_(q1) ^(H){haeck over (A)}_(q1)=(|h_(q1)|²+|h_(q2|) ²) I₂ (I₂ is 2×2 identity matrix)

{haeck over (A)}_(q2) ^(H){haeck over (A)}_(q2)=(|h_(q3|) ²+|h_(q4)|²) I₂

[0073] ${{\overset{\Cup}{A}}_{q1}^{H}{\overset{\Cup}{A}}_{q2}} = \begin{bmatrix} \left( {{h_{q1}^{*}h_{q3}} + {h_{q2}h_{q4}^{*}}} \right) & {- \left( {{h_{q1}^{*}h_{q4}} - {h_{q2}h_{q3}^{*}}} \right)} \\ \left( {{h_{q1}^{*}h_{q4}} - {h_{q2}h_{q3}^{*}}} \right)^{*} & \left( {{h_{q1}^{*}h_{q3}} + {h_{q2}h_{q4}^{*}}} \right) \end{bmatrix}$

{haeck over (A)}_(q2) ^(H){haeck over (A)}_(q1)=({haeck over (A)}_(q1) ^(H){haeck over (A)}_(q2))^(H)

[0074] That is, {haeck over (C)} consists of sums of STTD-encoded 2×2 subblocks and reflects the transformed physical channel which determines performance of the communication system. Again, the preferred embodiments choose the transformation W to enhance capacity of the physical channel C to yield the transformed physical channel {haeck over (C)}.

[0075] As with the preceding preferred embodiments, the covariance matrix R decomposes as the tensor product of the transmitter spatial covariance matrix R_(TX) (elements _(ρTX)(k,m)) and the receiver spatial covariance matrix R_(RX) (elements _(ρRX)(i,j)). That is, R=R_(RX)

R_(TX); or for the preferred embodiments with 4 transmitter antennas and Q receiver antennas:

[0076] E[h_(qp)h_(q′p′)*]=_(ρRX)(q,q′) _(ρTX)(p,p′) for p,p′=1, . . . ,4; q,q′=1, . . . , Q But then for each pair q,q′, all of the _(ρTX)(p,p′) can be found up to the multiplicative constant _(ρRX)(q,q′). That is, the separability of the receiver covariance and transmitter covariance implies the previously analyzed case Q=1 suffices. And the transformation W in general leads to the transformed transmitter covariance {haeck over (R)}_(TX)=W^(H R) _(TX) W and the transformed covariance {haeck over (R)}=(I_(Q)

W)^(H) R (I_(Q)

W) where I_(Q) is the Q×Q identity matrix.

[0077] So repeat the previous: estimate the 4×4 transmitter covariance matrix, R_(TX), by a sample covariance matrix which can be obtained from averaging the channel state estimates ĥ_(qp) Lover multiple symbol intervals for one antenna q

_(ρRX)(q,q) _(ρTX)(p,p′)=(1/N) Σ_(1≦n≦N) ĥ_(qp)[n]ĥ_(qp′)*[n]

[0078] where N is the number of samples in the average. The estimates ĥ (from a pilot channel) are available from the space-time RAKE operation. Further, the estimates of _(ρTX)(p,p′) from various receiver antennas q can be averaged (with weightings) to improve the estimates.

[0079] Then find 4×4 W using any of the previous minimization approaches. The Q antennas implies the elements of 4×4 E[{haeck over (C)}] are sums over q. More explicitly, a minimization of the off-diagonal elements together with uniformization of the on-diagonal elements of E[{haeck over (C)}] to find W becomes:

min{|Σ_(1≦q≦Q) E[

_(q1)*

_(q3)+

_(q2)

_(q4)*]|²+|Σ_(1≦q≦Q) E[

_(q1)*

_(q4)−

_(q2)

_(q3)*]|²}

min{|Σ_(1≦q≦Q) E[|

_(q1)|²+|

_(q2)|²]−2|²}

[0080] with a normalization of Σ_(1≦q≦Q) E[|

_(q1)|²+|

_(q2)|²+|

_(q3)|²+|

_(q4)|²]=4.

[0081] Analogous to the Q=1 scenario, an interference resistant detector must be used to separate the two independent data streams from two STTD encoders. In general, the optimal maximum likelihood detection would estimate the transmitted symbols s by ŝ which is the vector of symbols that minimizes the sum of the errors in the received signal on the receiver antennas:

∥r ₁−({haeck over (A)} ₁₁ ŝ ₁ +{haeck over (A)} ₁₂ ŝ ₂)∥² +∥r ₂−({haeck over (A)} ₂₁ ŝ ₁ +{haeck over (A)} ₂₂ ŝ ₂)∥+. . . +∥r _(Q)−({haeck over (A)}_(Q1) ŝ ₁ +{haeck over (A)} _(Q2) ŝ ₂)∥²

[0082] Such a maximum likelihood detection becomes computationally intensive with larger antenna systems. Since the size of matrix {haeck over (A)} is 2Q×4, linear (1-shot) and iterative detectors with lower complexity are applicable when Q is at least 2. As mentioned before, both linear and iterative detectors are based on the idea of interference suppression/cancellation. Possible methods include zero forcing and minimum mean square error (MMSE). In the following, the linear MMSE (LMMSE) and iterative MMSE (IMMSE) detectors are explained. A zero-forcing-based detector can be obtained from its MMSE analog by removing the second term in the matrix inverse.

[0083] Starting from the statistics z which is the output of the space-time RAKE combiner (e.g., FIG. 2d):

z={haeck over (A)}^(H)r={haeck over (A)}^(H)({haeck over (A)} s+w)={haeck over (C)} s+{haeck over (A)} w

[0084] the LMMSE detector essentially performs a linear transformation F to the statistics z such that the mean square error (MSE) E[∥F z−s ∥²] is minimized. The (theoretically derived) linear transformation F is:

F=({haeck over (C)}+N₀/E_(s) I₄)⁻¹

[0085] where N₀ is the energy of each of the 2Q components of the white noise w, E_(s) is the average energy of each symbol in s (assume that all the symbols in s are of the same constellation, modulation scheme), and I₄ is the 4×4 identity matrix. As noted above, the linear transformation for linear zero-forcing (LZF) detector is simply

F=({haeck over (C)})⁻¹

[0086] And the resulting minimum MSE for all of the 4 symbols in s corresponds to the diagonal elements of the matrix N₀F. The resulting linearly transformed statistics y=Fz is essentially the soft estimate of s. Each element of y is then passed separately to a decision device (symbol detector) to provide the corresponding hard symbol estimate.

[0087] For systems with 4 transmit antennas, the iterative MMSE (IMMSE) detector is a sequence of 4 linear MMSE detection stages, where each detection provides the soft and hard symbol estimates for each of the 4 symbols in s. In each of the 4 stages, a linear MMSE transformation is performed. After the transformation, one symbol is selected for detection (based on the post detection SINR). The signal corresponding to that symbol is then regenerated and subtracted from the received signal. Let a₁, a₂, a₃, and a₄ denote the first, second, third, and fourth columns of matrix {haeck over (A)}. Also, let v(n) denote the n-th element of a vector v. The following pseudo-code describes how an IMMSE detector operates: B = [ a₁ a₂ a₃ a₄ ] for p=1 to 4 F = ( B^(H) B + N₀/E_(s) I)^(−  : (4−p+1) × (4−p+1) matrix) y = F B^(H) r        (4−p+1) ×1 vector Find the smallest diagonal element of matrix F Select one out of (4−p+1) symbols to be detected which corresponds to the smallest diagonal element of matrix F: let that be s(o(p) ) Obtain soft estimate of symbol s(o(p) ) from the corresponding element of y Find the hard estimate of s(o(p) ): σ(o(p) ) r = r − a_(o(p)) σ (o(p) ) Remove column a_(o(p)) from B end

[0088] Note that the symbol selection is based on the diagonal elements of matrix F, which correspond to symbol MSEs. Theoretically, the symbol MSE is inversely proportional to SINR.

[0089] 4. Multiple Antenna Preferred Embodiments

[0090]FIG. 2c generalizes the foregoing transmitter from four transmit antennas to P antennas with P/2 separate STTD encoders for P/2 symbol streams s₁, s_(2,) . . . , s_(P/2). The preceding preferred embodiments are modified so that $\begin{matrix} {{r_{q}(n)} = {{h_{q1}{y_{1}(n)}} + {h_{q2}{y_{2}(n)}} + \ldots + {h_{qP}{y_{P}(n)}} + {w_{q}(n)}}} \\ {= {{\hslash_{q1}{x_{1}(n)}} + {\hslash_{q2}{x_{2}(n)}} + \ldots + {\hslash_{qP}{x_{P}(n)}} + {w_{q}(n)}}} \\ {= {{\hslash_{q1}{s_{1}(n)}} + {\hslash_{q2}\left( {- {s_{1}^{*}\left( {n + 1} \right)}} \right)} + \ldots + {\hslash_{qP}\left( {- {s_{P/2}^{*}\left( {n + 1} \right)}} \right)} + {w_{q}(n)}}} \end{matrix}$

[0091] and similarly $\begin{matrix} {{r_{q}^{*}\left( {n + 1} \right)} = {{\hslash_{q1}^{*}{x_{1}^{*}\left( {n + 1} \right)}} + {\hslash_{q2}^{*}{x_{2}^{*}\left( {n + 1} \right)}} + \ldots + {\hslash_{qP}^{*}{x_{P}^{*}\left( {n + 1} \right)}} + {w_{q}^{*}\left( {n + 1} \right)}}} \\ {= {{\hslash_{q1}^{*}{s_{1}^{*}\left( {n + 1} \right)}} + {\hslash_{q2}^{*}{s_{1}(n)}} + \ldots + {\hslash_{qP}^{*}{s_{P/2}(n)}} + {w_{q}^{*}\left( {n + 1} \right)}}} \end{matrix}$

[0092] where W is a P×P linear transformation of P-vector x to P-vector y=W* x as in FIG. 2d and

_(q)=W^(H)h_(q).

[0093] This can again be expressed in terms of 2-vectors and 2×2 matrices as:

r _(q) ={haeck over (A)} _(q1) s ₁ +{haeck over (A)} _(q2) s ₂+. . . +{haeck over (A)}_(qP/2) s_(P/2) +W _(q)

[0094] where r_(q) is the 2-vector of components r_(q)(n), r_(q)*(n+1); s₁ is the 2-vector of components s₁(n), s₁*(n+1); . . . , s_(P/2) is the 2-vector of components s_(P/2)(n), s_(P/2)*(n+1); {haeck over (A)}_(q1) is a 2×2 matrix corresponding to the channels of the upper pair x₁, x₂ in FIG. 2d to receiver antenna q with first row of {haeck over (A)}_(q1) equal

_(q1), −

_(q2) and second row

_(q2)*,

_(q1)*; . . . , and {haeck over (A)}_(qP/2) is a 2×2 matrix corresponding to the channels of the bottom pair x_(P-1), x_(P) to antenna q with first row

_(q,P-1), −

_(qP) and second row

_(qP)*,

_(q,P-1)* . .

[0095] As with the prior preferred embodiment, the notation can be further compressed with the following definitions: the 2Q×1 vector r with its first two components equal the two components of r₁, next two components equal the two components of r₂, and so forth to the Qth last two components equal to the two components of r_(Q) (i.e., vertical concatenation of r₁, r₂, . . . , r_(Q)), P×1 vector s as the vertical concatenation of s₁, . . . s_(P/2); and 2Q×P matrix {haeck over (A)} as the Q×P/2 array of 2×2 matrices {haeck over (A)}₁₁ {haeck over (A)}₁₂ . . . {haeck over (A)}_(1,P/2); {haeck over (A)}₂₁ {haeck over (A)}₂₂, . . . , {haeck over (A)}_(1,P/2) ; . . . {haeck over (A)}_(Q1) {haeck over (A)}_(Q2), . . . , {haeck over (A)}Q,P/2 (thus the first row of {haeck over (A)} is [

₁₁, −

₁₂,

₁₃, −

₁₄, . . . ,

_(1,P-1), −

_(1P)] and second row [

₁₂*,

₁₁*,

₁₄*,

₁₃*, . . . ,

_(1P)*,

_(1,P-1)*], third row [

₂₁, −

₂₂,

₂₃, −

₂₄, . . . ,

_(2,P-1), −

_(2P)], fourth row [

₂₂*,

₂₁*,

₂₄*,

₂₃*, . . . ,

_(2P)*,

_(2P-1)*], and so forth down to the 2Qth row [

_(Q2)*,

_(Q1)*,

_(Q4)*,

_(Q3)*, . . . ,

_(QP)*,

_(Q,P-1)*]. With this notation:

r={haeck over (A)} s+w

[0096] The matrix A is the 2Q×P effective transformed channel coefficient matrix of the PQ paths: one from each of the P transmitter antennas to each of the Q receiver antennas. The P×P transformation matrix W will be determined as previously by approximating an independent, identically distributed channel.

[0097] Form {haeck over (C)} as the P×P Hermitian matrix {haeck over (A)}^(H){haeck over (A)} and which is a P/2×P/2 array of sums of 2×2 STTD matrices {haeck over (A)}_(q,k) ^(H){haeck over (A)}_(q,m) with the sums over q in the range 1≦q≦Q for each k,m=1,2, . . . P/2 where: $\begin{matrix} \begin{matrix} {{{\overset{\Cup}{A}}_{qm}^{H}{\overset{\Cup}{A}}_{qm}} = {\left( {{\hslash_{q,{{2m} - 1}}}^{2} + {\hslash_{q,{2m}}}^{2}} \right)I_{2}}} & \quad & \left( {I_{2}\quad {is}\quad 2 \times 2\quad {identity}\quad {matrix}} \right) \end{matrix} \\ {{{\overset{\Cup}{A}}_{qk}^{H}{\overset{\Cup}{A}}_{qm}} = \begin{bmatrix} \left( {{\hslash_{q,{{2k} - 1}}^{*}\hslash_{q,{{2m} - 1}}} + {\hslash_{q,{2k}}\hslash_{q,{2m}}^{*}}} \right) & {- \left( {{\hslash_{q,{{2k} - 1}}^{*}\hslash_{q,{2m}}} - {\hslash_{q,{2k}}\hslash_{q,{{2m} - 1}}^{*}}} \right)} \\ \left( {{\hslash_{q,{{2k} - 1}}^{*}\hslash_{q,{2m}}} - {\hslash_{q,{2k}}\hslash_{q,{{2m} - 1}}^{*}}} \right)^{*} & \left( {{\hslash_{q,{{2k} - 1}}^{*}\hslash_{q,{{2m} - 1}}} + {\hslash_{q,{2k}}\hslash_{q,{2m}}^{*}}} \right)^{*} \end{bmatrix}} \\ {{{\overset{\Cup}{A}}_{qm}^{H}{\overset{\Cup}{A}}_{qk}} = \left( {{\overset{\Cup}{A}}_{qk}^{H}{\overset{\Cup}{A}}_{qm}} \right)^{H}} \end{matrix}$

[0098] That is, {haeck over (C)} consists of sums of STTD-encoded 2×2 subblocks and reflects the transformed physical channel and determines performance of the communication system. Again, the preferred embodiments choose the transformation W to enhance capacity of the physical channel C to yield the transformed physical channel {haeck over (C)}.

[0099] As with the preceding preferred embodiments, the covariance matrix R decomposes as the tensor product of the transmitter spatial covariance matrix R_(TX) (elements _(ρTX)(k,m)) and the receiver spatial covariance matrix R_(RX) (elements _(ρRX)(i,j)). That is, R=R_(RX)

R_(TX); or for the preferred embodiments with P transmitter antennas and Q receiver antennas:

E[h_(qp)h_(q′p′)*]=_(ρRX)(q,q′) _(ρTX)(p,p′) for p,p′=1, . . . , P; q,q′=1, . . . , Q

[0100] Then for each pair q,q′, all of the _(ρTX)(p,p′) can be found up to the multiplicative constant _(ρRX)(q,q′). That is, the separability of the receiver covariance and transmitter covariance means that the previously-analyzed case Q=1 suffices. Indeed, the transformation W in general leads to the transmitter covariance {haeck over (R)}_(TX)=W^(H) R_(TX) W and the covariance {haeck over (R)}=(I_(Q)

W)^(H) R (I_(Q)

W) where I_(Q) is the Q×Q identity matrix.

[0101] So repeating the previous: estimate the P×P transmitter covariance matrix, R_(TX), by a sample covariance matrix which can be obtained from averaging the channel state estimates ĥ_(qp) over multiple symbol intervals for one antenna q

_(ρRX)(q,q) _(ρTX)(p,p′)=(1/N) Σ_(1≦n≦N) ĥ_(qp)[n]ĥ_(qp′)*[n]

[0102] where N is the number of samples in the average. The estimates ĥ (from a pilot channel) are available from the space-time RAKE operation.

[0103] Then find W using any of the previous minimization approaches. More explicitly, a minimization of the off-diagonal elements together with uniformization of the on-diagonal elements of E[{haeck over (C)}] implies picking W to achieve: $\begin{matrix} {\min \left\{ {{{\sum\limits_{1 \leq q \leq Q}{E\left\lbrack {{\hslash_{q,{{2k} - 1}}^{*}\hslash_{q,{{2m} - 1}}} + {\hslash_{q,{2k}}\hslash_{q,{2m}}^{*}}} \right\rbrack}}} +} \right.} \\ \left. {{\sum\limits_{1 \leq q \leq Q}{E\left\lbrack {{\hslash_{q,{{2k} - 1}}^{*}\hslash_{q,{2m}}} - {\hslash_{q,{2k}}\hslash_{q,{{2m} - 1}}^{*}}} \right\rbrack}}} \right\} \end{matrix}$ $\min \left\{ {{{\sum\limits_{1 \leq q \leq Q}{E\left\lbrack {{\hslash_{q,{{2k} - 1}}}^{2} + {\hslash_{q,{2k}}}^{2}} \right\rbrack}} - 2}} \right\}$

[0104] with a normalization of E[|

_(q1)|²+|

_(q2)|²+. . . +|

_(qP)|²]=P and trace{W^(H)W}=P.

[0105] The same detection schemes (maximum likelihood, linear, and iterative) can be extended for an arbitrary value of P (even). When Q is at least P/2, linear and iterative detection can be applied.

[0106] 5. Extension for Multipath (Frequency Selective) Channels

[0107] When the channel is frequency selective (contains multiple propagation paths with different delays), two possible scenarios can occur. The first scenario is relevant to CDMA systems with large spreading gain (e.g. ≧128) and the channel delay spread is small compared to one symbol duration. In this case, different paths arriving at the receiver at different delays can be resolved to provide multipath diversity without causing significant amount of inter-symbol interference. Additional path diversity can be treated as having additional receive antennas (e.g. having 2-path diversity at each antenna is equivalent to having 2Q receive antennas).

[0108] The second scenario is relevant to higher data rate systems where the channel delay spread is sufficiently large compared to one symbol duration that the effect of inter-symbol interference is significant. In this case, multipath interference suppression can be used in conjunction to the spatial interference resistant detector, especially when the number of users/codes is large and/or higher order modulation is used. The concept described above for selecting the best linear transformation W can be extended to this scenario.

[0109] 6. MIMO Preferred Embodiment

[0110] The above description applies to systems that employ multiple STTD encoding. The aforementioned weighting technique for combating the effect of correlated channels can also be applied to multi-input multi-output (MIMO) systems that do not employ any space-time coding. As illustrated in the transmitter and receiver of FIGS. 2f-2 g, denote the number of transmit and receive antennas as P and Q, respectively. The received (despread) baseband signal across all receive antennas at any time interval can be written in a Q-dimensional vector as: $\begin{matrix} {r = {{h_{1}x_{1}} + {h_{2}x_{2}} + \ldots + {h_{P}x_{P}} + w}} \\ {= {{\begin{bmatrix} h_{1} & h_{2} & \ldots & h_{P} \end{bmatrix}\begin{bmatrix} x_{1} & x_{2} & \ldots & x_{P} \end{bmatrix}}^{T} + w}} \\ {= {{Hx} + w}} \end{matrix}$

[0111] where h_(p) denotes the Q-vector channel corresponding to the p-th transmit antenna, and x_(p) is the transmitted signal via the p-th transmit antenna. The matrix H is the Q×P MIMO channel matrix and the vector x is the P×1 transmitted signal vector. Note that in this case, the time index (n) can be suppressed since the transmitted symbols are independent across time.

[0112] Analogous to the weighting in multiple STTD encoded systems, the P×1 transmitted signal vector x is obtained from the linearly transformed P×1 transmitted data symbol vector s. Denoting the P×P linear transformation as W, we have x=Ws. Hence, r can be written as

r=H W s+w

[0113] Unlike in multiple STTD encoded systems, H contains the actual physical channel coefficients. That is, the (q,p)-th element of matrix H corresponds to the channel between the p-th transmit antenna and q-th receive antenna.

[0114] As with the preceding preferred embodiments, the covariance matrix R (where R_(k,m)=E[h_(k)h_(m)*]) decomposes as the tensor product of the transmitter spatial covariance matrix R_(TX) (elements _(ρTX)(k,m)) and the receiver spatial covariance matrix R_(RX) (elements _(ρRX)(i,j)). That is, R=R_(RX)

R_(TX); or for the preferred embodiments with P transmitter antennas and Q receiver antennas:

E[h_(qp)h_(q′p′)*]=_(ρRX)(q,q′) _(ρTX)(p,p′) for p,p′=1, . . . ,P; q,q′=1, . . . , Q

[0115] Then for each pair q,q′, all of the _(ρTX)(p,p′) can be found up to the multiplicative constant _(ρRX)(q,q′). That is, the separability of the receiver covariance and transmitter covariance means that the previously-analyzed case Q=1 suffices.

[0116] Similar to that for multiple STTD, the P×P effective channel matrix after maximum ratio combining (denoted M) is

M=W^(H) H^(H) H W

[0117] where the (i,j)-th element of matrix H^(H)H is h_(i) ^(H)h_(j)=Σ_(1≦q≦Q) h_(iq)* h_(qj). Hence, the elements of matrix E[H^(H) H] can be directly related to the elements of matrix R since Σ_(1≦q≦Q) E[h_(iq)* h_(qj)]=Σ_(1≦q≦Q ρRX)(i,q) _(ρTX)(q,j).

[0118] The rule for choosing W is similar to that for multiple STTD systems described above: choose W so that the corresponding transformed E[H^(H)H], denoted E[M], will resemble the channel matrix of an independent, identically distributed channel in that: (1) expectations of off-diagonal elements are close to 0 and (2) expectations of on-diagonal elements are uniform. The off-diagonal elements reflect the average additional interference due to channel correlations, and the smallest on-diagonal element corresponds to the stream with the worst signal to interference plus noise ratio (SINR), which dominates performance.

[0119] W is found using any of the previous minimization approaches. More explicitly, let the (i,j)-th element of matrix E[M] be denoted as M_(ij). Then, the minimization of the off-diagonal elements together with uniformization of the on-diagonal elements of E[M] implies picking W to achieve:

min{Σ_(1≦i≦P) Σ_(i<j≦P) |M_(ij)|}

min{Σ_(1≦i≦P) | M_(ij)−1 |}

[0120] with a normalization of Σ_(1≦i≦P) M₁₁=P and trace{W^(H)W}=P.

[0121] The same detection schemes (maximum likelihood, linear, and iterative) can be extended for an arbitrary value of P. When Q is at least P, linear and iterative detection can be applied.

[0122] The minimization computations optimally consider all possible W and lead to complex computations. In the case of time-division duplexing (TDD) with base station transmission and reception (from mobiles) in the same (reciprocal) physical channel, the W computation may be performed at the base station using its channel estimates as in FIG. 1a; the base station typically has available computational power. The W used at the transmitter can be communicated to the receiver for detection. Alternatively, the receiver itself may also compute W based on its most recent or delayed channel estimates.

[0123] In contrast, for frequency-division duplexing (FDD) the W must be computed at the mobile receiver (the base station receives signals from the mobile in a different frequency band) and communicated to the base station via a feedback channel; consequently, quantization of W permits computations to be performed by searching (comparison-feedback) over smaller sets of possible Ws. A one-shot approach compares all possible choices of W and then progressively signals the quantized elements of W back to the transmitter, most significant bits first. Alternatively, partition the set of all possible W into subsets: S₁, S_(2, . . .) S_(K). Then at an update time t the receiver compares the choices of W in a corresponding subset S_(k(t)), and the resulting best (minimizing) choice W^((k)) from this subset is then compared to the then-current previous best choices W⁽¹⁾, . . . , W^((K)) from the other subsets, and the best W^((t)) of these W⁽¹⁾, . . . , W^((k)), . . . W^((K)) is used as the update and sent to the transmitter.

[0124] Unlike for multiple STTD encoded systems, it can be shown that choosing W to be a permutation matrix does not change the resulting channel statistics, hence does not provide any performance advantage over a non-transformed system. For MIMO systems, W can be chosen as a unitary (complex rotation) matrix. For instance P=2, the rotation matrix is $\begin{matrix} \begin{bmatrix} {{\cos (\theta)}\quad ^{j\quad \phi}} & {{- \sin}\quad (\theta)\quad ^{j\quad \phi}} \\ {\sin \quad (\theta)} & {\cos \quad (\theta)} \end{bmatrix} & \quad & \quad & {{0 \leq \theta < {\pi/2}},} & {0 \leq \phi < {2\quad \pi}} \end{matrix}$

[0125] For FDD systems, the angles θ and φ can be uniformly quantized to finite number of values. For systems with P>2, Givens or Householder rotations can be used.

[0126] 7. Asymmetric Modulation Preferred Embodiments

[0127]FIG. 3 illustrates asymmetric modulation preferred embodiments for two symbol streams (analogous to FIG. 2a) in which the symbol mapping differs for the streams; FIG. 1d is a flow diagram. In particular, in a first asymmetric preferred embodiment the serial-to-parallel converter processes 6 bits per symbol interval by alternating sets of 2 bits to the upper symbol mapper and 4 bits to the lower symbol mapper. The upper symbol mapper maps a set of 2 bits into a QPSK symbol, and the lower mapper maps a set of 4 bits into a 16-QAM symbol. The resulting symbol streams (upper QPSK and lower 16-QAM) are each STTD encoded (and spread) and transmitted. In a variation, the serial-to-parallel converter could process groups of 12 bits (2 symbol intervals) by 4 bits to the upper mapper for two QPSK symbols followed by 8 bits to the lower mapper for two 16-QAM symbols. This asymmetric symbol constellation sizes can take advantage of asymmetries in the channel (space diversity). The symbol mapping may be adaptive to the channel by using channel estimates to compare capacity of the transmitter antennas. The symbol mappers may provide multiple symbol constellations for dynamic adaptation; or all the symbol mappings may be performed in a single (programmable) DSP or other processor.

[0128]FIG. 4 shows a receiver for the asymmetric symbol transmission where detection uses the appropriate symbol constellations which are updated intermittently (periodically).

[0129] Analogously, the asymmetric symbol preferred embodiments can also use time diversity in that the symbol mapping may alternate in successive symbol periods. And time diversity can be mixed with space diversity. In particular, for 12 bits per 2 symbol intervals the following symbol possibilities arise: asymmetry s₁(n) s₁(n + 1) s₂(n) s₂(n + 1) none 8PSK 8PSK 8PSK 8PSK space QPSK QPSK 16-QAM 16-QAM time QPSK 16-QAM QPSK 16-QAM space/time QPSK 16-QAM 16-QAM QPSK

[0130] For other numbers of bits per symbol interval, other symbol constellations would be used; for example, 18 bits per 2 symbol intervals could use 16-QAM plus 32-QAM. And the bit rate (bits per symbol interval) could vary in time, so the pairs of constellations used would also vary.

[0131] More generally, different combinations of 4 modulation (symbol mapping) schemes can be used, one for each transmit antenna. For multiple STTD systems with P transmit antennas, different combinations of P modulation schemes can be used. A combination of P modulation schemes corresponds to a particular assignment of P modulation schemes to P different symbols.

[0132] Given a predetermined set of different modulation assignments, there are a number of possible criteria for selecting the desired modulation assignment from the set. These criteria can be categorized into two groups: fixed and adaptive. A fixed criterion does not depend on the channel dynamics, whereas an adaptive criterion periodically updates the modulation assignment based upon the change in channel condition.

[0133] An example of fixed criteria for systems with 4 transmit antennas is to select an asymmetric assignment of QPSK for one stream and 16-QAM for the second stream as described above. This selection results in better performance compared to the symmetric assignment of 8-PSK for both streams. It can be argued that the aforementioned asymmetric assignment results in approximately 1-dB improvement over the symmetric assignment regardless of the channel condition.

[0134] Adaptive criterion can be based on several metrics. One possible metric is to minimize the bit error rate (BER) or the frame error rate (FER) for a given channel realization while fixing the data rate. In this case, the set of possible modulation assignments contains different assignments, which result in the same data rate. Another possible metric is to maximize the system throughput (data rate) for a given channel realization while imposing a worst-case error rate (BER or FER) constraint. In this case, the set of modulation assignments contains different assignments with varying data rates. In both cases, a relation/mapping between the channel parameters and the error rate (BER or FER) is needed. Such mapping depends on the type of detector that is used at the receiver. For the maximum likelihood detector, a union bound for BER in terms of the channel parameters and modulation assignment scheme can be derived. The selected assignment for the first case should be the one that results in the minimum BER bound. For linear and iterative (zero forcing or minimum mean square error (MMSE)) detectors, the error rate is a decreasing function of minimum/worst-case post-detection SINR, where the minimum is taken across all the P symbols. Hence, the selected assignment for the first case should be the one that results in the largest minimum/worst-case post-detection SINR. Closed-form expressions of the post-detection SINR for each symbol can be derived for different types of linear and iterative detectors.

[0135] Before considering the mapping between post-detection SINR and channel parameters, it is essential to discuss the operations of linear and iterative detectors. Focus on MMSE-based detectors since a zero-forcing-based detector can be obtained from its MMSE analog by removing the second term in the matrix inverse.

[0136] Repeating previously-used notation and a FIG. 3 transmitter, take the received signals on antenna q after down conversion (and any dispreading) as: $\begin{matrix} {{r_{q}(n)} = {{h_{q1}{x_{1}(n)}} + {h_{q2}{x_{2}(n)}} + \ldots + {h_{qP}{x_{P}(n)}} + {w_{q}(n)}}} \\ {= {{h_{q1}{s_{1}(n)}} + {h_{q2}\left( {- {s_{1}^{*}\left( {n + 1} \right)}} \right)} + \ldots + {h_{qP}\left( {{- {s_{P/2}^{*}\left( {n + 1} \right)}} + {w_{q}(n)}} \right.}}} \end{matrix}$

[0137] and similarly $\begin{matrix} {{r_{q}^{*}\left( {n + 1} \right)} = {{h_{q1}^{*}{x_{1}^{*}\left( {n + 1} \right)}} + {h_{q2}^{*}{x_{2}^{*}\left( {n + 1} \right)}} + \ldots + {h_{qP}^{*}{x_{P}^{*}\left( {n + 1} \right)}} + {w_{q}^{*}\left( {n + 1} \right)}}} \\ {= {{h_{q1}^{*}{s_{1}^{*}\left( {n + 1} \right)}} + {h_{q2}^{*}{s_{1}(n)}} + \ldots + {h_{qP}^{*}{s_{P/2}(n)}} + {w_{q}^{*}\left( {n + 1} \right)}}} \end{matrix}$

[0138] where h_(qp) is the physical channel coefficient from transmit antenna p to receive antenna q.

[0139] This can again be expressed in terms of 2-vectors and 2×2 matrices as:

r _(q) =A _(q1) s ₁ +A _(q2) s ₂ +. . . +A _(qP/2) s _(P/2) +w _(q)

[0140] where r_(q) is the 2-vector of components r_(q)(n), r_(q)*(n+1); S₁ is the 2-vector of components s₁(n), s₁*(n+1); . . . , s_(P/2) is the 2-vector of components s_(P/2)(n), s_(P/2)*(n+1); A_(q1) is a 2×2 matrix corresponding to the channels of the upper pair x₁, x₂ in FIG. 3 to receiver antenna q with first row of A_(q1) equal [h_(q1), −h_(q2)] and second row [h_(q2)*, h_(q1)*]; . . . , and A_(qP/2) is a 2×2 matrix corresponding to the channels of the bottom pair x_(P-1, x) _(P) (P=4 in FIG. 3) to antenna q with first row [h_(q,P-1), −h_(qP)] and second row [h_(qP)*, h_(q,P-1)*].

[0141] As with the prior preferred embodiment, the notation can be further compressed with the following definitions: the 2Q×1 vector r with its first two components equal the two components of r₁, next two components equal the two components of r₂, and so forth to the Qth last two components equal to the two components of r_(Q) (i.e., vertical concatenation of r₁, r₂, . . . , r_(Q)), P×1 vector s as the vertical concatenation of s₁ . . . s_(P/2); and 2Q×P matrix A as the Q×P/2 array of 2×2 matrices A₁₁ A₁₂ . . . A_(1,P/2); A₂₁ A₂₂, . . . , A_(1,P/2) . . . ; A_(Q1), A_(Q2), . . . , A_(Q,P/2) (thus the first row of A is [h₁₁, −h₁₂, h₁₃, −h₁₄, . . . , h_(1,P-1), −h_(1P)] and second row [h₁₂*, h₁₁*, h₁₄*, h₁₃*, . . . , h_(1P)*, h_(1,P-1)*], third row [h₂₁, −h₂₂, h₂₃, −h₂₄, . . . , h_(2,P-1), −h_(2P)], fourth row [h₂₂*, h₂₁*, h₂₄*, h₂₃*, . . . , h_(2P)*, h_(2,P-1)*], and so forth down to the 2Qth row [h_(Q2)*, h_(Q1)*, h_(Q4)*, h_(Q3)*, . . . , h_(QP)*, h_(Q,P-1)*]. With this notation:

r=A s+w

[0142] The matrix A is the 2Q×P effective transformed channel coefficient matrix of the PQ paths: one from each of the P transmitter antennas to each of the Q receiver antennas.

[0143] With P=4 and starting from the statistics z which is the output of the space-time RAKE combiner:

z=A ^(H) r=A ^(H)(A s+w)=C s+A ^(H) w

[0144] the LMMSE detector essentially performs a linear transformation F to the statistics z such that the mean square error (MSE) E[∥F z−s ∥²] is minimized. Again, theoretically, such linear transformation F is:

F=(C+N ₀ E ⁻¹) ⁻¹

[0145] where N₀ is the energy of each of the 2Q components of the white noise w, E is the 4×4 diagonal matrix of symbol average energies: E₁₁ is average energy of s₁(n), E₂₂ average of s₁(n+1), E₃₃ average of s₂(n), E₄₄ average of s₂(n+1) (e.g., n denotes even-indexed symbol intervals and n+1 denotes odd-indexed intervals). As noted above, the linear transformation for linear zero-forcing (LZF) detector is simply F=C⁻¹.

[0146] The resulting minimum MSE for all the 4 symbols in s corresponds to the diagonal elements of the matrix N₀ F. The resulting linearly transformed statistics y=Fz is essentially the soft estimate of s. Each element of y is then passed separately to a decision device (symbol detector) provide the corresponding hard symbol estimate.

[0147] For systems with 4 transmit antennas, the iterative MMSE (IMMSE) detector is a sequence of 4 linear MMSE detection stages, where each detection provides the soft and hard symbol estimates for each of the 4 symbols in s. In each of the 4 stages, a linear MMSE transformation is performed. After the transformation, one symbol is selected for detection. The signal corresponding to that symbol is then regenerated and subtracted from the received signal.

[0148] Let a₁, a₂, a₃, and a₄ denote the first, second, third, and fourth columns of matrix A. Also, let v(n) denote the n-th element of a vector v. The following pseudo-code describes how IMMSE detector operates: B = [ a₁ a₂ a₃ a₄ ] E = diag{ E₁₁ , E₂₂ , E₃₃ , E₄₄ } for p=1 to 4 F = ( B^(H) B + N₀ E⁻¹ )⁻¹   (4−p+1) × (4−p+1) matrix y = F B^(H) r        (4−p+1) ×1 vector Find the smallest diagonal element of matrix F Select one out of (4−p+1) symbols to be detected which corresponds to largest SINR: let that be s(o(p) ) Obtain soft estimate of symbol s(o(p) ) from the corresponding element of y Find the hard estimate of s(o(p) ): σ(o(p) ) r = r − a_(o(p)) from B Remove column a_(o(p)) from B Remove column o(p) and row o(p) from matrix E end

[0149] The extension for systems with P=2p (p≧3) transmit antennas is straightforward.

[0150] For MMSE-based detectors the post-detection symbol SINR corresponding to the n-th element of s is

SINR(n)=(E _(nn) /N ₀) F _(nn)−1

[0151] where F_(nn) indicates the n-th diagonal element of matrix F. For LMMSE, matrix F is the same for all the symbols in s (see the above discussion on LMMSE). For IMMSE, matrix F is different for different symbols in s since each symbol is detected at different iteration. This SINR expression can be used for selecting the symbol to be detected at each iteration. Based on the above relation, the selected symbol is the one that results in the minimum (F_(nn)/E_(nn)). Symbol selection at each iteration can also be thought of as finding the detection order.

[0152] The SINR expression given above is instrumental for selecting the modulation assignment (described above) as it provides an explicit relation between the post-detection SINR (which is inversely related to BER or FER) and the channel condition (conveyed in matrix F) for both linear and iterative MMSE detectors. For a fixed data rate constraint, the adaptive assignment selection chooses a modulation assignment that maximizes the worst-case SINR (minimum SINR across all the symbols in s). For a fixed error rate constraint, the system throughput is maximized by selecting an assignment with the highest possible data rate that still satisfies the error rate constraint. In this case, the mapping between SINR and error rate can be used.

[0153] Related to the detection ordering (symbol selection at each iteration) for an IMMSE detector, preferred embodiments also provide a better metric than (F_(nn)/E_(nn)). The asymmetry of the symbol constellations implies differing average energy for differing symbol streams. Instead of using the post-detection symbol SINR, use the MSE scaled by the average symbol energy (which is: E_(nn) F_(nn)), which reflects per bit MSE. This metric works better when bit error rate is of interest rather than symbol error rate. The same holds for iterative zero-forcing detector where the mean square error is equivalent to the noise variance: using E_(nn) F_(nn) for detection ordering results in better performance (F=(B^(H) B)⁻¹ for iterative zero-forcing).

[0154] The symbol mapping asymmetry also extends to the case of more than 2 streams with STTD encoding; that is, the transmitter of FIG. 2c can have an asymmetric symbol mapping among the P/2 streams.

[0155] The asymmetric modulation preferred embodiments can also follow the setup of FIG. 2a in that the symbol mapping may be performed prior to the serial-to-parallel. Further, the STTD encoder outputs of the asymmetric symbols can also be linearly transformed prior to transmission; thereby combining the asymmetry with the channel adaptation of preceding preferred embodiments. In fact, a permutation linear transformation together with fixed symbol mappers can provide the choice among space-only, time-only, and space-time asymmetries. The receiver with Q antennas may be as in FIG. 2d with the detection including searches over asymmetric constellation products.

[0156] Analogous to the linear transformation preferred embodiments, for a TDD system both the transmitter and the receiver can compute channel conditions and thus the constellation selection, but either the transmitter or the receiver alone could perform the computations and convey to the other the constellation selection. In an FDD system the receiver assesses the channel conditions and conveys information to the transmitter; and the transmitter could perform the selection computation and convey such to the receiver.

[0157] 8. Simulation Results

[0158] FIGS. 5-7 show simulation results of with and without optimal permutation W for double STTD with P=4 transmit antennas and Q=4 receiver antennas for 8-PSK, 16-QAM, and 64-QAM, respectively. In particular, channels A and B are flat Rayleigh fading models (peak cross-correlation of 0.6 for channel B). Here, 1234 denotes regular double STTD without permutation; 3124 is the optimal permutation for channel A; and 1432 is the optimal permutation for channel B. The optimal permutation does not depend upon the modulation scheme, it only depends upon the spatial covariance profile.

[0159] FIGS. 8-9 show comparisons of both STTD encoding 8-PSK with one STTD encoding QPSK and the other 16-QAM (i.e., spatial asymmetry) for an ID channel and for channel B, respectively. Note “ModDetect” means the modified iterative detector in which instead of using the post-detection symbol SINR, use the MSE scaled by the average symbol energy.

[0160] 9. Modifications

[0161] The preferred embodiments can be modified in various ways while retaining the features of linear transformation of symbols prior to transmission and/or symmetrical symbol mapping.

[0162] For example, the receiver could have the linear transformation provided by the transmitter and thereby avoid the computation; the STTD could be 3×3 or larger; the asymmetric symbol encoding could also apply to general multiple input, multiple output (MIMO) systems; . . . 

What is claimed is:
 1. A method of transmitting, comprising: (a) providing encoded streams x₁, x₂, . . . , x_(p) with P an integer greater than 1; (b) linearly transforming said x₁, x₂, . . . , x_(p x) into y₁, y₂, . . . , y_(p) and (c) transmitting said y₁, y₂, . . . , y_(P). (d) wherein said linearly transforming of step (b) derives from transmission channel coefficients.
 2. The method of claim 1, wherein: (a) said linear transforming of step (b) of claim 1 is selection from a finite set of linear transformations.
 3. The method of claim 1, wherein: (a) said linear transforming of step (b) of claim 1 is with parameters provided by a recipient of said transmitting of step (c) of claim
 1. 4. The method of claim 3, wherein: (a) said recipient provides said parameters via a feedback channel.
 5. The method of claim 1, wherein: (a) said linear transforming of step (b) of claim 1 is with parameters derived from receipt of signals from a recipient of said transmitting of step (c) of claim
 1. 6. The method of claim 5, further comprising: (a) transmitting said parameters to said recipient via a signaling channel.
 7. The method of claim 1, wherein: (a) said linear transforming of step (b) of claim 1 is with parameters arising from transforming a channel from a recipient of said transmitting of step (c) of claim 1, said transforming a channel approximates an independent, identically distributed or uncorrelated channel.
 8. The method of claim 1, wherein: (a) said linear transforming of step (b) of claim 1 is with a P×P matrix W determined by combinations of estimations of E[(Wh_(p))* Wh_(p′)] approximating a multiple of the P×P identity matrix where h_(p) are coefficients of a channel to a recipient of said transmitting of step (c) of claim
 1. 9. The method of claim 8, wherein: (a) the elements of W are quantized.
 10. The method of claim 8, wherein: (a) said coefficient of a channel are estimated with pilot symbols from said recipient.
 11. The method of claim 1, further comprising: (a) spreading said y₁, y₂, . . . , y_(p) prior to transmission.
 12. A method of receiving, comprising: (a) treating received signals as a linear transform of P parallel encoded signals from P antennas, with P an integer greater than 1; (b) providing said linear transform; (c) detecting said signals using said linear transform applied to channel coefficient estimates.
 13. The method of claim 12, wherein: (a) said step (c) of claim 12 is an interference resistant detecting.
 14. The method of claim 12, wherein: (a) said step (c) of claim 12 is an iterative minimum mean square error detecting.
 15. The method of claim 12, wherein: (a) said received signals of step (a) of claim 12 is with Q antennas, with Q an integer greater than
 1. 16. The method of claim 12, wherein: (a) said receiving of step (a) of claim 12 is with 1 antenna.
 17. The method of claim 12, wherein: (a) said linear transform of step (b) of claim 12 is with parameters provided by a source of said signals of step (a) of claim
 12. 18. The method of claim 12, wherein: (a) said linear transform of step (b) of claim 12 is with parameters derived from channel estimates using second signals from a source of said signals of claim 12 step (a).
 19. The method of claim 12 wherein: (a) said linear transform of step (b) of claim 12 is with a P×P matrix W determined by combinations of estimations of E[(Wh_(p))* Wh_(p′)] approximating a multiple of the P×P identity matrix where h_(p) are coefficients of a channel of said received signals of step (a) of claim
 12. 20. The method of claim 12, wherein: (a) said treating of step (a) of claim 12 includes resolving multiple signal paths; and (b) said detecting of step (c) of claim 12 includes multipath interference suppression.
 21. A transmitter, comprising: (a) a serial-to-parallel converter coupled to a data stream, (b) a linear transformer coupled to said serial-to-parallel converter; and (c) transmit antennas couple to said linear transformer.
 22. A receiver, comprising: (a) a channel coefficient estimator; (b) a linear transformation source coupled to said estimator; and (c) a detector coupled to said estimator and said linear transformation source. 